package com.ruoyi.factory.staffSafe.domain;


import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 培训档案人员信息对象 staffsafe_info
 * 
 * @author ljj
 * @date 2024-04-12
 */
public class StaffsafeInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private String id;

    /** 组织名称 */
    @Excel(name = "组织名称")
    private String orgname;
    //部门
    private String depname;

    /** 姓名 */
    @Excel(name = "姓名")
    private String username;

    /** 性别 */
    @Excel(name = "性别")
    private String sex;

    /** 身份证号 */
    @Excel(name = "身份证号")
    private String userCardId;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String phone;

    /** 学历 */
    @Excel(name = "学历")
    private String education;

    /** 毕业院校 */
    @Excel(name = "毕业院校")
    private String school;

    /** 专业 */
    @Excel(name = "专业")
    private String professional;

    /** 岗位 */
    @Excel(name = "岗位")
    private String post;

    /** 员工号 */
//    @Excel(name = "员工号")
    private String userCode;

    /** 删除标志 */
//    @Excel(name = "删除标志")
    private String dr;

    @Excel(name = "类型",dictType = "staff_type")
    private String typeCode;

    /** 培训证书信息 */
//    @Excel(name = "培训证书")
    private List<StaffsafeCredential> staffsafeCredentialList;

    /** 培训档案课程记录信息 */
    private List<StaffsafeRecord> staffsafeRecordList;

    /** 员工类型 */
//    @Excel(name="类型",targetAttr = "typecode", dictType = "staff_type")
    private StaffType staffType;

    /** 职业资格名称 */
    @Excel(name = "技术职务/职业资格")
    private String credentialname;

    /** 证件编码 */
    @Excel(name = "安全培训合格证书编号")
    private String creid;

    /** 证件有效日期 */
//    @Excel(name = "证件有效日期")
    private String cretime;

    /** 开始时间 */
    @Excel(name = "开始时间", width = 30)
    private String starttime;
    //入厂时间
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date jointime;

    /** 结束时间 */
    @Excel(name = "结束时间", width = 30)
    private String endtime;

    private String resultType;

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }
    public void setOrgname(String orgname) 
    {
        this.orgname = orgname;
    }

    public String getOrgname() 
    {
        return orgname;
    }
    public void setUsername(String username) 
    {
        this.username = username;
    }

    public String getUsername() 
    {
        return username;
    }
    public void setPhone(String phone)
    {
        this.phone = phone;
    }

    public String getPhone()
    {
        return phone;
    }
    public void setEducation(String education) 
    {
        this.education = education;
    }

    public String getEducation() 
    {
        return education;
    }
    public void setProfessional(String professional) 
    {
        this.professional = professional;
    }

    public String getProfessional() 
    {
        return professional;
    }

    public void setPost(String post) 
    {
        this.post = post;
    }

    public String getPost() 
    {
        return post;
    }
    public void setUserCode(String userCode)
    {
        this.userCode = userCode;
    }

    public String getUserCode()
    {
        return userCode;
    }
    public void setDr(String dr)
    {
        this.dr = dr;
    }

    public String getDr()
    {
        return dr;
    }


    public List<StaffsafeRecord> getStaffsafeRecordList()
    {
        return staffsafeRecordList;
    }

    public void setStaffsafeRecordList(List<StaffsafeRecord> staffsafeRecordList)
    {
        this.staffsafeRecordList = staffsafeRecordList;
    }

    public List<StaffsafeCredential> getStaffsafeCredentialList()
    {
        return staffsafeCredentialList;
    }

    public void setStaffsafeCredentialList(List<StaffsafeCredential> staffsafeCredentialList)
    {
        this.staffsafeCredentialList = staffsafeCredentialList;
    }

    public StaffType getStaffType()
    {
        return staffType;
    }

    public void setStaffType(StaffType staffType)
    {
        this.staffType = staffType;
    }

    public String getTypeCode() {
        return typeCode;
    }

    public void setTypeCode(String typeCode) {
        this.typeCode = typeCode;
    }

    public String getCredentialname() {
        return credentialname;
    }

    public void setCredentialname(String credentialname) {
        this.credentialname = credentialname;
    }

    public String getCreid() {
        return creid;
    }

    public void setCreid(String creid) {
        this.creid = creid;
    }

    public String getCretime() {
        return cretime;
    }

    public void setCretime(String cretime) {
        this.cretime = cretime;
    }

    public String getStarttime() {
        return starttime;
    }

    public void setStarttime(String starttime) {
        this.starttime = starttime;
    }

    public String getEndtime() {
        return endtime;
    }

    public void setEndtime(String endtime) {
        this.endtime = endtime;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getUserCardId() {
        return userCardId;
    }

    public void setUserCardId(String userCardId) {
        this.userCardId = userCardId;
    }

    public String getSchool() {
        return school;
    }

    public void setSchool(String school) {
        this.school = school;
    }

    public String getResultType() {
        return resultType;
    }

    public void setResultType(String resultType) {
        this.resultType = resultType;
    }

    public String getDepname() {
        return depname;
    }

    public void setDepname(String depname) {
        this.depname = depname;
    }

    public Date getJointime() {
        return jointime;
    }

    public void setJointime(Date jointime) {
        this.jointime = jointime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("orgname", getOrgname())
            .append("username", getUsername())
            .append("phone", getPhone())
            .append("education", getEducation())
            .append("professional", getProfessional())
            .append("post", getPost())
            .append("userCode", getUserCode())
            .append("dr", getDr())
            .append("staffsafeRecordList", getStaffsafeRecordList())
            .append("staffsafeCredentialList", getStaffsafeCredentialList())
            .append("staffType", getStaffType())
            .append("credentialname", getCredentialname())
            .append("creid", getCreid())
            .append("cretime", getCretime())
            .append("starttime", getStarttime())
            .append("endtime", getEndtime())
            .append("sex", getSex())
            .append("userCardId", getUserCardId())
            .append("school", getSchool())
            .append("depname", getDepname())
            .append("jointime", getJointime())
            .toString();
    }
}
